package controlador;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.ArrayList;
import java.util.Vector;

import modelo.Deposito;
import modelo.Drogueria;
import modelo.Estante;
import modelo.LoteProducto;

import vista.PantallaReubicacion;

public class ControladorPantallaReubicar implements ActionListener {
	
	private PantallaReubicacion pantallaReubicacion;
	private Drogueria drogueria;

	public ControladorPantallaReubicar(Drogueria drogueria){
		this.drogueria = drogueria;
		pantallaReubicacion = new PantallaReubicacion();
		pantallaReubicacion.setVisible(true);
		pantallaReubicacion.setLocationRelativeTo(null);
		pantallaReubicacion.agregarListener(this);
	}
	@Override
	public void actionPerformed(ActionEvent e) {
		// TODO Auto-generated method stub
		if (e.getActionCommand().equalsIgnoreCase("Aceptar")){
			pantallaReubicacion.mostrarMensaje("hola");
		}
	}
	
	public void reubicarProducto() {
		
	}
	
	public void cargarTabla() {
		
		for (int i=0; i<drogueria.cantidadDepositos(); i++) {
			Deposito deposito = drogueria.getUnDeposito(i);
			for (int j = 0; j< deposito.cantEstantes(); j++){
				Estante estante = deposito.getUnEstante(j);
				ArrayList<LoteProducto> auxLotes = estante.getLoteProducto();
				for (int k = 0; k<estante.cantidadLoteProducto(); k++){
					LoteProducto loteProducto = estante.getLoteProducto(k);
					Vector <String> datosLotes = new Vector<String>(4,1);
					String producto = loteProducto.getProducto().getNombre();
					String nombDeposito = loteProducto.getEstante().getDeposito().getCodigo();
					String codEstante = loteProducto.getEstante().getNroEstante();
					String cantidad = String.valueOf(loteProducto.getCantidadDisponible());
					datosLotes.add(producto);
					datosLotes.add(nombDeposito);
					datosLotes.add(codEstante);
					datosLotes.add(cantidad);
					pantallaReubicacion.agregarFilaDeposito(datosLotes);
					auxLotes.add(loteProducto);
				}		
			}
		}
	}
}